Efficient Multiple Dispatching Using Nested Transition-Arrays
نویسندگان
چکیده
Efficient implementation of multiple dispatching is critical with regard to the success of the multimethods, which are recognized as a powerful mechanism in object-oriented programming languages. However, the current known time-efficient approaches suffer of poor space efficiency. This paper presents a novel multiple dispatching approach that substantially improves the space efficiency over the known constant time lookup approaches. The approach we propose is applicable to a wide range of languages supporting locally or partially ordered multi-methods, both statically and dynamically typed.
منابع مشابه
Multiple-Dispatching Based on Automata
We present a novel technique for multiple-dispatching. In object-oriented programming languages, multiple-dispatching provides increased expressive power over single-dispatching by guiding method lookup using the values of all arguments instead of the receiver only. However, the efficient implementation for multiple-dispatching is still critical with regard to its success as a standard. There h...
متن کاملEfficient Multiple and Predicate Dispatching
The speed of message dispatching is an important issue in the overall performance of object-oriented programs. We have developed an algorithm for constructing efficient dispatch functions that combines novel algorithms for efficient single dispatching, multiple dispatching, and predicate dispatching. Our algorithm first reduces methods written in the general predicate dispatching model (which g...
متن کاملEfficient Dynamic Look-Up Strategy for Multi-Methods
In object-oriented programming languages, multiple dispatching provides increased expressive power over single dispatching by guiding method lookup using the values of all arguments instead of the receiver only. There have been several programming languages supporting this mechanism and they demonstrate its usefulness. However, efficient implementation of multi-methods is critical with regard t...
متن کاملA Pattern Language for Efficient, Predictable, Scalable, and Flexible Dispatching Mechanisms for Distributed Object Computing Middleware
In many application domains, the distributed object computing (DOC) middleware is responsible for dispatching upcalls to one or more application objects when events or requests arrive from clients. Implementing efficient, predictable, and scalable middleware dispatching mechanisms is hard and implementing them for multi-threaded systems is even harder. In particular, dispatching mechanisms must...
متن کاملEfficient Predicate Dispatching
The speed of method dispatching is an important issue in the overall performance of object-oriented programs. We have developed an algorithm for constructing efficient dispatch functions for the general predicate dispatching model, which generalizes single dispatching, multiple dispatching, predicate classes and classifiers, and patternmatching. Our algorithm generates a lookup DAG each of whos...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 1995